HTMLify
Max Circular Subarray Sum.py
Views: 26 | Author: prakhardoneria
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | class Solution: def maxCircularSum(self, arr): total_sum = 0 curr_max = 0 max_so_far = arr[0] curr_min = 0 min_so_far = arr[0] for x in arr: total_sum += x curr_max = max(x, curr_max + x) max_so_far = max(max_so_far, curr_max) curr_min = min(x, curr_min + x) min_so_far = min(min_so_far, curr_min) if max_so_far < 0: return max_so_far return max(max_so_far, total_sum - min_so_far) |